草庐IT

SQL PRIMARY KEY 约束

全部标签

mysql - 外键约束失败,错误代码为 "Error creating foreign key on [table] (check data types)"

以下查询失败并出现错误“在城市上创建外键时出错(检查数据类型)”:ALTERTABLE`hotels`ADDFOREIGNKEY(`city`)REFERENCES`mydatabase`.`cities`(`id`)ONDELETECASCADEONUPDATECASCADE;基本上我想在city.id和hotels.city之间建立一对多关系。这是两个表:CREATETABLEIFNOTEXISTS`cities`(`id`int(11)NOTNULLAUTO_INCREMENT,PRIMARYKEY(`id`))ENGINE=InnoDB;CREATETABLEIFNOTEXIS

mysql - 将数据库逻辑放在应用程序中,而不是触发器、存储过程、约束等

我使用的是Rails,它不支持特定于数据库的操作,例如触发器、存储过程和各种约束(并非全部)。我想知道是否应该将数据库逻辑放在应用程序本身中。因为这样你就可以创建比数据库提供的更复杂的逻辑,而且它也是独立于数据库的(我可以从mysql移动到postgresql,反之亦然),如果你把这些东西放在数据库中就不会了。这是正确的方法吗?谢谢 最佳答案 (注意:这是一篇以Postgres为中心的文章。我有多年的MySQL经验,以及一些Postgres和Oracle。我更喜欢Postgres,但这不是这篇文章的重点。)这实际上是一个关于两种思想

MySql - Sequelize - 无法添加外键约束

我正在尝试使用Nodejssequelize来创建数据库。被调用的命令是CREATETABLEIFNOTEXISTS`wheel`(`id`INTEGERNOTNULLauto_increment,`createdAt`DATETIMENOTNULL,`updatedAt`DATETIMENOTNULL,`shopId`VARCHAR(255),PRIMARYKEY(`id`),FOREIGNKEY(`shopId`)REFERENCES`shop`(`id`)ONDELETESETNULLONUPDATECASCADE)ENGINE=InnoDB;CREATETABLEIFNOTEX

mysql export sql dump alphabatically,导致导入时出现外键约束错误

我的数据库(MySQL)中有10个表。其中两个在下面给出tbl_statestate_id|int(10)|UNSIGNEDZEROFILLauto_incrementstate_name|varchar(40)tbl_citycity_id|int(10)|UNSIGNEDZEROFILLauto_incrementcity_name|varchar(40)|state_code|int(10)|UNSIGNEDZEROFILL(FKreferencewithtbl_state.state_id)外键约束:tbl_city.state_code是对tbl_state.state_id

java - 一对多单向关系的外键约束问题

我有Employee(父级)和Emp_Contacts(子级)。只有Employee类具有单向映射。importjavax.persistence.Column;importjavax.persistence.Entity;importjavax.persistence.FetchType;importjavax.persistence.GeneratedValue;importjavax.persistence.GenerationType;importjavax.persistence.Id;importjavax.persistence.JoinColumn;importjava

mysql - 未在 JPA 中创建的唯一约束

我创建了以下实体bean,并将两列指定为唯一的。现在我的问题是该表是在没有唯一约束的情况下创建的,并且日志中没有错误。有人有想法吗?@Entity@Table(name="cm_blockList",uniqueConstraints=@UniqueConstraint(columnNames={"terminal","blockType"}))publicclassBlockList{@Id@GeneratedValue(strategy=GenerationType.AUTO)privateintid;@ManyToOne(cascade=CascadeType.PERSIST)@

当外键存在时 MySQL 5.5 外键约束失败

刚刚在macosx10.6上安装了MySQL5.5,我在许多表上遇到了一个奇怪的问题。下面是一个例子。插入一行在不应该的情况下因外键约束而失败。它引用的外键确实存在。有什么想法吗?mysql>showcreatetableLanguage;+----------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------

javascript - sequelize - 无法添加外键约束

我正在尝试在两个表之间设置1:1的关系。RefreshToken表将有两个与Users表相关的foreignKey,如下图所示:我使用sequelize-auto生成我的sequelize模型。用户模型:module.exports=function(sequelize,DataTypes){returnsequelize.define('Users',{idUsers:{type:DataTypes.INTEGER(11),allowNull:false,primaryKey:true},name:{type:DataTypes.STRING(45),allowNull:true},

mysql - 如何从 MySQL 表中删除唯一性约束?

我通过以下方式在MySQL数据库中创建了一个表:CREATETABLE`newsubscriptions_orderspecification`(`id`integerAUTO_INCREMENTNOTNULLPRIMARYKEY,`display_name`varchar(256)NOTNULL,`sub_def_id`integerUNSIGNEDNOTNULL,`source_code_id`integerUNSIGNEDNOTNULL,`order_code_id`integerUNSIGNEDNOTNULL,`rate`numeric(5,2)NOTNULL,`type`va

php - 禁用 Doctrine 外键约束

我和我的一个模特有关系:/***@ORM\ManyToOne(targetEntity="Page",cascade="persist")*@ORM\JoinColumn(name="page_id",referencedColumnName="id")*/private$parentPage;当我删除父页面时,出现此错误:Integrityconstraintviolation:1451Cannotdeleteorupdateaparentrow:aforeignkeyconstraintfails基本上我的模型是页面和页面修订版。当我删除页面时我不想删除修订版。我还想在页面修订版中